#volumen eines Pentagondodekaeders
#berechne_oberflaeche_dodekaeder(kantenlaenge
#(kantenlänge = float or kantenlaenge = int)and kantenlänge > 0
#test(2 =>82.58, 2.0 => 82.58, -2 => Err, "Hallo Welt" => Err) 


$LOAD_PATH.unshift File.join(File.dirname(__FILE__),'..','ext_pr1/lib')
require 'ext_pr1_v4'


def berechne_oberflaeche_dodekaeder(kantenlaenge)
  
check_pre((
    (kantenlaenge.int? or
     kantenlaenge.float?) and
    kantenlaenge > 0
  ))
  
#  validiere_uebergabeparameter(kantenlaenge)
3*(kantenlaenge**2)*Math.sqrt(25+10*Math.sqrt(5))
  
end

def validiere_uebergabeparameter(param)
 raise 'invalid parameter' if (param.is_a?(Float) == false and param.is_a?(Integer) == false) or param <= 0
end
